home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 July / EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso / earcd / phase5 / ppcrelease / examples / msg2oldppc.s < prev    next >
Text File  |  1998-02-21  |  3KB  |  169 lines

  1.  # GNU C 2.7.2.1
  2.  # -O2 -fdefer-pop -fomit-frame-pointer -fcse-follow-jumps -fcse-skip-blocks
  3.  # -fexpensive-optimizations -fthread-jumps -fstrength-reduce -fpeephole
  4.  # -fforce-mem -ffunction-cse -finline -fcaller-saves -fpcc-struct-return
  5.  # -frerun-cse-after-loop -fschedule-insns -fschedule-insns2 -fcommon
  6.  # -fgnu-linker -mpowerpc -mnew-mnemonics
  7.  
  8.     .file    "Msg2oldPPC.c"
  9. gcc2_compiled.:
  10. .section    .rodata
  11.     .align 2
  12. .LC0:
  13.     .string    "PPC port"
  14.     .align 2
  15. .LC1:
  16.     .string    "M68k port"
  17.     .align 2
  18. .LC2:
  19.     .string    "Text sent by PPC processor\n"
  20.     .section    ".text"
  21.     .align 2
  22.     .globl main
  23.     .type     main,@function
  24.     .long 0x406c
  25. main:
  26.     stwu 1,-112(1)
  27.     mflr 0
  28.     stw 26,88(1)
  29.     stw 27,92(1)
  30.     stw 28,96(1)
  31.     stw 29,100(1)
  32.     stw 30,104(1)
  33.     stw 31,108(1)
  34.     stw 0,116(1)
  35.     lis 30,0x8002
  36.     ori 30,30,16384
  37.     stw 30,8(1)
  38.     addis 9,0,.LC0@ha
  39.     addi 9,9,.LC0@l
  40.     stw 9,12(1)
  41.     li 26,0
  42.     stw 26,16(1)
  43.     addi 3,1,8
  44.     bl PPCCreatePort
  45.     mr. 27,3
  46.     bc 12,2,.L20
  47.     mr 3,27
  48.     bl PPCWaitPort
  49.     mr 3,27
  50.     bl PPCGetMessage
  51.     mr. 3,3
  52.     bc 12,2,.L4
  53.     bl PPCReplyMessage
  54. .L4:
  55.     li 3,28
  56.     li 4,1
  57.     bl PPCAllocVec
  58.     mr. 31,3
  59.     bc 12,2,.L17
  60.     stw 26,8(1)
  61.     addi 3,1,8
  62.     bl PPCCreatePort
  63.     mr. 29,3
  64.     bc 12,2,.L15
  65.     mr 3,29
  66.     li 4,28
  67.     bl PPCCreateMessage
  68.     mr. 28,3
  69.     bc 12,2,.L12
  70.     stw 30,8(1)
  71.     addis 9,0,.LC1@ha
  72.     addi 9,9,.LC1@l
  73.     stw 9,12(1)
  74.     stw 26,16(1)
  75. .L8:
  76.     addi 3,1,8
  77.     bl PPCObtainPort
  78.     mr. 30,3
  79.     bc 12,2,.L8
  80.     mr 3,30
  81.     mr 4,28
  82.     lis 7,0x8765
  83.     ori 7,7,17185
  84.     addis 9,0,.LC2@ha
  85.     addi 11,9,.LC2@l
  86.     mr 5,31
  87.     li 6,28
  88.     lwz 0,.LC2@l(9)
  89.     lwz 9,4(11)
  90.     lwz 10,8(11)
  91.     lwz 8,12(11)
  92.     stw 0,0(31)
  93.     stw 9,4(31)
  94.     stw 10,8(31)
  95.     stw 8,12(31)
  96.     lwz 0,16(11)
  97.     lwz 9,20(11)
  98.     lwz 11,24(11)
  99.     stw 0,16(31)
  100.     stw 9,20(31)
  101.     stw 11,24(31)
  102.     bl PPCSendMessage
  103.     mr 3,29
  104.     bl PPCWaitPort
  105.     mr 3,30
  106.     bl PPCReleasePort
  107.     mr 3,28
  108.     bl PPCDeleteMessage
  109. .L12:
  110.     mr 3,29
  111.     bl PPCDeletePort
  112.     extsh 3,3
  113.     cmpwi 1,3,0
  114.     bc 12,6,.L12
  115. .L15:
  116.     mr 3,31
  117.     bl PPCFreeVec
  118. .L17:
  119.     mr 3,27
  120.     bl PPCDeletePort
  121.     extsh 3,3
  122.     cmpwi 1,3,0
  123.     bc 12,6,.L17
  124. .L20:
  125.     lwz 0,116(1)
  126.     mtlr 0
  127.     lwz 26,88(1)
  128.     lwz 27,92(1)
  129.     lwz 28,96(1)
  130.     lwz 29,100(1)
  131.     lwz 30,104(1)
  132.     lwz 31,108(1)
  133.     addi 1,1,112
  134.     blr
  135. .Lfe1:
  136.     .size     main,.Lfe1-main
  137.     .align 2
  138.     .globl printf
  139.     .type     printf,@function
  140.     .long 0x404c
  141. printf:
  142.     stwu 1,-32(1)
  143.     mflr 0
  144.     stw 28,16(1)
  145.     stw 29,20(1)
  146.     stw 30,24(1)
  147.     stw 31,28(1)
  148.     stw 0,36(1)
  149.     mr 28,3
  150.     addis 9,0,MyFile@ha
  151.     lwz 29,MyFile@l(9)
  152.     bl strlen
  153.     mr 5,3
  154.     mr 4,28
  155.     mr 3,29
  156.     bl PPCWrite
  157.     lwz 0,36(1)
  158.     mtlr 0
  159.     lwz 28,16(1)
  160.     lwz 29,20(1)
  161.     lwz 30,24(1)
  162.     lwz 31,28(1)
  163.     addi 1,1,32
  164.     blr
  165. .Lfe2:
  166.     .size     printf,.Lfe2-printf
  167.     .comm    MyFile,4,4
  168.     .ident    "GCC: (GNU) 2.7.2.1"
  169.